// import React from 'react';
// import XChart, {XChartProps} from "../XChart";
// import 'echarts/extension/bmap/bmap';
// import './map/js/china';
// import XTools from "../../toolkit/XTools";
// import XButton from '../../editor/XButton';
//
// export interface XChartMapProps extends XChartProps {
//   isOnline?: boolean,
//   showProvince?: boolean,
//   baiduAk?: string,
//   getProvinceDataFun?: Function,
//   getSymbolSizeFun?: Function,
// }
//
// export default class XChartMap extends XChart<XChartMapProps, any> {
//
//   static defaultProps = {
//     ...XChart.defaultProps,
//     xField: 'name',
//     yFields: ["value"],
//     isOnline: false,
//     showProvince: false,
//     baiduAk: "gcnFaw9RFr7ZcuIuGPbcBIrCPYoktvhH",
//     styleType: "style3",
//     getProvinceDataFun: undefined,
//     getSymbolSizeFun: undefined,
//   };
//
//   points市: any;
//   points省: any;
//   chinaData: any;
//   div返回: any;
//   provinces: any;
//   geoCoordMap: any;
//
//   constructor(props) {
//     super(props);
//     this.state.option = this.getOption(this.state.data);
//     this.initData();
//   }
//
//   componentDidMount() {
//     super.componentDidMount();
//     // @ts-ignore
//     if (this.props.isOnline && typeof BMap !== 'undefined') {
//       XTools.CreateScript('http://api.map.baidu.com/api?v=2.0&ak=' + this.props.baiduAk,
//         () => {
//           this.echart.getEchartsInstance().setOption(this.getOnlineOption(undefined));
//         });
//     }
//   }
//
//   getOnlineOption(data) {
//     const planePath = 'path://M1705.06,1318.313v-89.254l-319.9-221.799l0.073-208.063c0.521-84.662-26.629-121.796-63.961-121.491c-37.332-0.305-64.482,36.829-63.961,121.491l0.073,208.063l-319.9,221.799v89.254l330.343-157.288l12.238,241.308l-134.449,92.931l0.531,42.034l175.125-42.917l175.125,42.917l0.531-42.034l-134.449-92.931l12.238-241.308L1705.06,1318.313z';
//     const that = this;
//     const convertData = function (data) {
//       const res = [];
//       for (let i = 0; i < data.length; i++) {
//         const dataItem = data[i];
//         const fromCoord = that.geoCoordMap[dataItem[0].name];
//         const toCoord = that.geoCoordMap[dataItem[1].name];
//         if (fromCoord && toCoord) {
//           res.push([{coord: fromCoord}, {coord: toCoord}]);
//         }
//       }
//       return res;
//     };
//     const color = ['#fff'];
//     const BJData = [
//       [{name: '北京'}, {name: '上海', value: 95}],
//       [{name: '北京'}, {name: '广州', value: 90}],
//       [{name: '北京'}, {name: '大连', value: 80}],
//       [{name: '北京'}, {name: '南宁', value: 70}],
//       [{name: '北京'}, {name: '南昌', value: 60}],
//       [{name: '北京'}, {name: '拉萨', value: 50}],
//       [{name: '北京'}, {name: '长春', value: 40}],
//       [{name: '北京'}, {name: '包头', value: 30}],
//       [{name: '北京'}, {name: '重庆', value: 20}],
//       [{name: '北京'}, {name: '常州', value: 10}]
//     ];
//     const series = [];
//     [['北京', BJData]].forEach(function (item, i) {
//       series.push({
//           name: item[0] + '',
//           type: 'lines',
//           // zlevel: 1,
//           effect: {
//             show: true,
//             period: 6,
//             trailLength: 0.7,
//             color: '#fff',
//             symbolSize: 3
//           },
//           lineStyle: {
//             normal: {
//               color: color[i],
//               width: 0,
//               curveness: 0.2
//             }
//           },
//           data: convertData(item[1])
//         },
//         {
//           name: item[0],
//           type: 'lines',
//           zlevel: 2,
//           effect: {
//             show: true,
//             period: 6,
//             trailLength: 0,
//             symbol: planePath,
//             symbolSize: 15
//           },
//           lineStyle: {
//             normal: {
//               color: color[i],
//               width: 1,
//               opacity: 0.4,
//               curveness: 0.2
//             }
//           },
//           data: convertData(item[1])
//         },
//         {
//           name: item[0],
//           type: 'effectScatter',
//           coordinateSystem: 'geo',
//           zlevel: 2,
//           rippleEffect: {
//             brushType: 'stroke'
//           },
//           label: {
//             normal: {
//               show: true,
//               fontSize: 16,
//               color: '#fff',
//               position: 'right',
//               formatter: '{b}'
//             }
//           },
//           symbolSize: '10',
//           itemStyle: {
//             normal: {
//               color: color[i]
//             }
//           }, // @ts-ignore
//           data: item[1].map(function (dataItem) {
//             return {
//               name: dataItem[1].name,
//               value: that.geoCoordMap[dataItem[1].name].concat([dataItem[1].value])
//             };
//           })
//         });
//     });
//
//     return {
//       //  backgroundColor: '#404a59',
//       title: {
//         text: '全国发展路线图',
//         subtext: '副标题，不需要主删除此行',
//         left: 'center',
//         top: '13%',
//         textStyle: {
//           color: '#fff'
//         }
//       },
//       geo: {
//         map: 'china',
//         label: {
//           emphasis: {
//             show: false
//           }
//         },
//         roam: true,
//         itemStyle: {
//           normal: {
//             areaColor: '#2a91e2',
//             borderColor: '#0165b4'
//           },
//           emphasis: {
//             areaColor: '#306de8'
//           }
//         }
//       },
//       series: series
//     };
//   }
//
//   onClickEvents(param) {
//     if (this.props.showProvince) {
//       for (var i = 0; i < this.provinces.length; i++) {
//         if (param.name === this.provinces[i].name && this.provinces[i].path) {
//           this.showProvince(this.provinces[i].path, this.provinces[i].name);
//           break;
//         }
//       }
//     }
//     if (param.componentType === "series" && param.data) {
//       // this.props.onClickData && this.props.onClickData(param.data);
//     }
//     // console.log(param);
//   }
//
//   onChartout() {
//     // 当鼠标移到扇形图上数字出现
//     this.echart.props.option.graphic.elements[0].style.text = '120'
//     this.echart.getEchartsInstance().setOption(this.echart.props.option) // 重新渲染
//   }
//
//   // 展示对应的省
//   async showProvince(pName, area) {
//     this.chinaData = this.state.data;
//     // @ts-ignore
//     await import("./map/js/province/" + pName + ".js");
//     this.div返回.style.display = "block";
//     let data = [];
//     if (this.props.getProvinceDataFun) {
//       data = await this.props.getProvinceDataFun(area);
//     }
//     // if (data == undefined || data.length == 0) {
//     // data = [{name: "长沙", value: 1000}]
//     // }
//     this.echart.getEchartsInstance().clear();
//     this.echart.getEchartsInstance().setOption(this._getOption(data, area));
//   }
//
//   getVisualMap(data) {
//     if (this.props.styleType == "style1") {
//       let min = undefined;
//       let max = undefined;
//       if (data && data.length > 0) {
//         data.forEach(item => {
//           let value = item.value;
//           if (value != undefined) {
//             if (item instanceof Array) {
//               value = item[2];
//             }
//             if (min == undefined) {
//               min = value;
//               max = value;
//             } else if (min > value) {
//               min = value;
//             } else if (max < value) {
//               max = value;
//             }
//           }
//         })
//         if (max == min) {
//           max += 100;
//         }
//       } else {
//         min = 0;
//         max = 2000;
//       }
//       return {
//         min: min,
//         max: max,
//         left: 26,
//         bottom: 40,
//         showLabel: true,
//         text: ["高", "低"],
//         calculable: true,//可筛选
//       }
//     }
//     return undefined;
//   }
//
//   getSeries(data, mapType) {
//     if (data && data.length > 0) {
//       if (this.props.styleType == "style1") {
//         //需要合并省市
//         return [{
//           type: 'map',
//           symbol: "circle",
//           mapType: mapType,
//           data: data,
//         }];
//       } else if (this.props.styleType == "style2") {
//         return [{
//           type: 'scatter',
//           coordinateSystem: 'geo',
//           // type: 'map',
//           // symbol: "circle",
//           // mapType: mapType,
//           zlevel: 1,
//           rippleEffect: {
//             brushType: 'stroke'
//           },
//           symbolSize: (val) => {//图标大小
//             if (this.props.getSymbolSizeFun) {
//               return this.props.getSymbolSizeFun(val[2], "scatter");
//             }
//             return val[2] / 30;
//           },
//           label: {
//             normal: {show: false},
//             emphasis: {show: false}
//           },
//           itemStyle: {
//             normal: {color: 'rgba(255,255,0,0.8)'},
//             emphasis: {color: 'rgba(246,33,87,1)'}
//           },
//           data: this.getPointData(data, mapType)
//         }];
//       } else if (this.props.styleType == "style3") {
//         data = this.getPointData(data, mapType);
//         return [
//           {
//             type: 'effectScatter',
//             coordinateSystem: 'geo',
//             zlevel: 2,
//             hoverAnimation: true,
//             showEffectOn: 'render',
//             rippleEffect: {
//               brushType: 'stroke'
//             },
//             label: {
//               normal: {
//                 show: true,
//                 fontFamily: '微软雅黑',
//                 fontSize: 24,
//                 color: '#FFF',
//                 formatter: '{b}',
//                 position: 'right',
//                 shadowBlur: 5,
//                 shadowColor: '#000'
//               },
//               emphasis: {show: true}
//             },
//             symbolSize: (val) => {//图标大小
//               if (this.props.getSymbolSizeFun) {
//                 return this.props.getSymbolSizeFun(val[2], "effectScatter");
//               }
//               return val[2] / 30;
//             },
//             itemStyle: {
//               normal: {
//                 color: 'rgba(255,255,255,1)'
//               }
//             },
//             data: data.sort(function (a, b) {
//               return b.value[2] - a.value[2];
//             }).slice(0, 5)
//           },
//           {
//             type: 'scatter',
//             coordinateSystem: 'geo',
//             symbol: 'pin',
//             symbolSize: (val) => {//图标大小
//               if (this.props.getSymbolSizeFun) {
//                 return this.props.getSymbolSizeFun(val[2], "scatter");
//               }
//               return val[2] / 10;
//             },
//             label: {
//               normal: {
//                 show: true,
//                 fontFamily: 'Arial, Helvetica, sans-serif',
//                 formatter: '{@[2]}',
//                 textStyle: {color: '#FFF', fontSize: 18,}
//               }
//             },
//             itemStyle: {
//               normal: {color: 'rgba(246,33,87,1)',}//标志颜色
//             },
//             zlevel: 3,
//             data: data.sort(function (a, b) {
//               return b.value[2] - a.value[2];
//             }).slice(0, 5)//前5名
//           }];
//       }
//     }
//     return [];
//   }
//
//   _getOption(data, mapType = "china") {
//     let isChina = mapType === "china";
//     return {
//       title: {show: false},
//       tooltip: {
//         trigger: 'item',
//         formatter: function (params) {
//           if ((params.value)[2]) {
//             return params.name + ' : ' + params.value[2];
//           } else if (params.value) {
//             return params.name + ' : ' + params.value;
//           }
//         },
//         textStyle: {color: '#FFF', fontSize: 24}
//       },
//       legend: this.props.styleType == "style1" ? undefined : {show: true,},
//       visualMap: this.getVisualMap(data),
//       geo: {map: mapType, roam: false,},
//       series: [
//         {
//           type: 'map',
//           mapType: mapType,
//           roam: false,//拖拽
//           itemStyle: {
//             normal: {
//               label: {show: true},
//               areaColor: 'rgba(0,153,255,0.6)',
//               borderColor: '#09F'
//             },
//             emphasis: {
//               label: {show: true},
//             }
//           },
//         },
//         ...this.getSeries(data, mapType)],
//     }
//   }
//
//   formatData(data){
//     data?.forEach(item => {
//       if (item.name == undefined) {
//         item.name = item[this.props.xField];
//       }
//       if (item.value == undefined) {// @ts-ignore
//         item.value = item[this.props.yFields[0]];
//       }
//     });
//   }
//
//   // @ts-ignore
//   getOption(data) {
//     this.formatData(data)
//     // @ts-ignore
//     if (this.props.isOnline && typeof BMap !== 'undefined') {
//       return {
//         bmap: {
//           // center: [116.46, 39.92],
//           zoom: 10,
//           roam: true,
//         },
//         series: [{
//           type: 'custom',
//           coordinateSystem: 'bmap',
//           polyline: true,
//           // data: busLines,
//           silent: true,
//         }]
//       }
//     }
//     if (this.geoCoordMap == undefined) {
//       this.initData();
//     }
//     // data = [];//随机数据
//     // for (const key in this.geoCoordMap) {
//     //   const geoCoord = this.geoCoordMap[key];
//     //   data.push({name: key, value: geoCoord.concat((Math.random() * 1000).toFixed(2))});
//     // }
//     return this._getOption(data);
//   };
//
//   click返回() {
//     this.div返回.style.display = "none";
//     this.echart.getEchartsInstance().clear();
//     this.echart.getEchartsInstance().setOption(this.getOption(this.chinaData));
//   }
//
//   getPointData(data, mapType) {
//     if (data && data.length > 0) {
//       if (data[0].value instanceof Array) {
//         return data;
//       }
//       data.forEach(item => {
//         item.value = [...this.getPoint(item.name, mapType), item.value]
//       })
//     }
//     return data;
//   }
//
//   renderDisplay(): JSX.Element {
//     return <>
//       {<div style={{display: "none", float: "left", position: "relative", zIndex: 100, left: 0}}
//             ref={e => this.div返回 = e}>
//         <XButton text={"返回"} onClick={e => this.click返回()}/>
//       </div>}
//       {super.renderDisplay()}
//     </>;
//   }
//
//   getPoint(name, mapType) {
//     if (mapType == "china") {
//       if (this.points省[name]) {
//         return this.points省[name];
//       }
//     } else {
//       if (this.points市[mapType] && this.points市[mapType][name]) {
//         return this.points市[mapType][name];
//       }
//     }
//     return [116.405285, 39.904989];//北京
//   }
//
//   initData() {
//     this.provinces = [
//       {"name": "上海", "path": "shanghai"},
//       {"name": "河北", "path": "hebei"},
//       {"name": "山西", "path": "shanxi"},
//       {"name": "内蒙古", "path": "neimenggu"},
//       {"name": "辽宁", "path": "liaoning"},
//       {"name": "吉林", "path": "jilin"},
//       {"name": "黑龙江", "path": "heilongjiang"},
//       {"name": "江苏", "path": "jiangsu"},
//       {"name": "浙江", "path": "zhejiang"},
//       {"name": "安徽", "path": "anhui"},
//       {"name": "福建", "path": "fujian"},
//       {"name": "江西", "path": "jiangxi"},
//       {"name": "山东", "path": "shandong"},
//       {"name": "河南", "path": "henan"},
//       {"name": "湖北", "path": "hubei"},
//       {"name": "湖南", "path": "hunan"},
//       {"name": "广东", "path": "guangdong"},
//       {"name": "广西", "path": "guangxi"},
//       {"name": "海南", "path": "hainan"},
//       {"name": "四川", "path": "sichuan"},
//       {"name": "贵州", "path": "guizhou"},
//       {"name": "云南", "path": "yunnan"},
//       {"name": "西藏", "path": "xizang"},
//       {"name": "陕西", "path": "shanxi1"},
//       {"name": "甘肃", "path": "gansu"},
//       {"name": "青海", "path": "qinghai"},
//       {"name": "宁夏", "path": "ningxia"},
//       {"name": "新疆", "path": "xinjiang"},
//       {"name": "北京", "path": "beijing"},
//       {"name": "天津", "path": "tianjin"},
//       {"name": "重庆", "path": "chongqing"},
//       {"name": "香港", "path": "hongkong"},
//       {"name": "澳门", "path": "macau"},
//       {"name": "台湾", "path": "taiwan"},
//       {"name": "南海诸岛", "path": ""}
//     ];
//     this.points省 = {
//       "山东": [118.186283, 36.374485],
//       "西藏": [88.388277, 31.56375],
//       "福建": [118.005928, 26.070282],
//       "台湾": [120.971486, 23.749452],
//       "上海": [121.438732, 31.072508],
//       "河北": [114.502461, 38.045474],
//       "河南": [113.619918, 33.902738],
//       "湖北": [112.271042, 30.98802],
//       "湖南": [111.754313, 27.655081],
//       "澳门": [113.56642, 22.159262],
//       "江西": [115.732937, 27.636129],
//       "海南": [109.754777, 19.189617],
//       "香港": [114.134394, 22.377371],
//       "黑龙江": [127.693002, 48.040469],
//       "新疆": [85.294712, 41.371801],
//       "贵州": [106.88108, 26.826362],
//       "陕西": [108.887567, 35.263665],
//       "宁夏": [106.169867, 37.291331],
//       "江苏": [119.48196, 32.985864],
//       "安徽": [117.226894, 31.849585],
//       "广西": [108.794237, 23.833575],
//       "吉林": [126.171246, 43.703944],
//       "山西": [112.305144, 37.619053],
//       "甘肃": [103.823557, 36.058039],
//       "重庆": [107.88398, 30.067321],
//       "四川": [102.693438, 30.674548],
//       "浙江": [120.109522, 29.181876],
//       "北京": [116.41989, 40.189913],
//       "云南": [101.485108, 25.008649],
//       "辽宁": [122.606135, 41.300702],
//       "广东": [113.429877, 23.334664],
//       "青海": [96.043531, 35.726402],
//       "内蒙古": [114.059024, 44.315561],
//       "天津": [117.351154, 39.28914]
//     };
//     this.points市 = {
//       "山东": {
//         "滨州市": [117.846542, 37.541558],
//         "烟台市": [120.807555, 37.242265],
//         "临沂市": [118.286435, 35.311924],
//         "德州市": [116.654094, 37.25164],
//         "菏泽市": [115.697077, 35.153083],
//         "潍坊市": [119.077544, 36.553783],
//         "莱芜市": [117.667758, 36.272233],
//         "淄博市": [118.058685, 36.610973],
//         "济宁市": [116.737867, 35.376918],
//         "东营市": [118.622568, 37.639368],
//         "日照市": [119.146314, 35.579226],
//         "泰安市": [117.030795, 36.00234],
//         "枣庄市": [117.397751, 34.91636],
//         "聊城市": [115.88836, 36.460636],
//         "威海市": [122.000775, 37.118709],
//         "青岛市": [120.150872, 36.451312],
//         "济南市": [117.097796, 36.741267]
//       },
//       "西藏自治区": {
//         "拉萨市": [91.091843, 30.037138],
//         "昌都市": [97.035213, 30.783746],
//         "那曲地区": [89.249512, 32.783417],
//         "日喀则市": [86.477897, 29.498548],
//         "林芝市": [95.239347, 29.199],
//         "山南市": [92.266618, 28.303955],
//         "阿里地区": [82.564674, 33.063736]
//       },
//       "福建": {
//         "龙岩市": [116.743578, 25.291456],
//         "南平市": [118.147152, 27.338571],
//         "莆田市": [118.893798, 25.445717],
//         "福州市": [119.200438, 26.048383],
//         "泉州市": [118.26637, 25.202655],
//         "漳州市": [117.458463, 24.330653],
//         "厦门市": [118.122873, 24.676846],
//         "三明市": [117.39998, 26.297821],
//         "宁德市": [119.489266, 26.97159]
//       },
//       "台湾": {},
//       "上海市": {
//         "闵行区": [121.418969, 31.087103],
//         "青浦区": [121.085201, 31.124653],
//         "长宁区": [121.380993, 31.207392],
//         "宝山区": [121.404599, 31.39205],
//         "嘉定区": [121.244499, 31.358033],
//         "松江区": [121.22036, 31.015371],
//         "静安区": [121.450643, 31.27082],
//         "浦东新区": [121.742136, 31.083855],
//         "杨浦区": [121.52921, 31.298459],
//         "虹口区": [121.485359, 31.276737],
//         "金山区": [121.255119, 30.819033],
//         "徐汇区": [121.439413, 31.162928],
//         "黄浦区": [121.483606, 31.215979],
//         "崇明区": [121.568465, 31.635918],
//         "普陀区": [121.392226, 31.257986],
//         "奉贤区": [121.562489, 30.897984]
//       },
//       "河北": {
//         "保定市": [115.177653, 39.025232],
//         "衡水市": [115.829112, 37.764927],
//         "张家口市": [115.038647, 40.874683],
//         "承德市": [117.551532, 41.356189],
//         "邯郸市": [114.548833, 36.553502],
//         "沧州市": [116.771422, 38.271081],
//         "秦皇岛市": [119.193148, 40.088464],
//         "石家庄市": [114.445075, 38.133051],
//         "唐山市": [118.339988, 39.719143],
//         "廊坊市": [116.540219, 39.111205],
//         "邢台市": [114.82293, 37.213871]
//       },
//       "河南": {
//         "周口市": [114.883006, 33.721788],
//         "平顶山市": [113.016889, 33.795186],
//         "洛阳市": [112.037367, 34.291783],
//         "济源市": [112.397955, 35.09924],
//         "濮阳市": [115.286785, 35.809078],
//         "南阳市": [112.289074, 33.043864],
//         "信阳市": [114.889374, 32.080342],
//         "漯河市": [113.904984, 33.654434],
//         "开封市": [114.541372, 34.604161],
//         "安阳市": [114.357623, 35.878188],
//         "驻马店市": [114.156137, 32.922648],
//         "新乡市": [114.093295, 35.262041],
//         "许昌市": [113.714995, 34.071807],
//         "三门峡市": [111.111998, 34.361995],
//         "鹤壁市": [114.3167, 35.721275],
//         "商丘市": [115.702096, 34.289197],
//         "郑州市": [113.473169, 34.626541],
//         "焦作市": [113.135132, 35.116547]
//       },
//       "湖北": {
//         "黄冈市": [115.343968, 30.717089],
//         "天门市": [113.107432, 30.642569],
//         "孝感市": [113.889779, 31.125388],
//         "恩施土家族苗族自治州": [109.555126, 30.191811],
//         "襄阳市": [112.086313, 31.974253],
//         "神农架林区": [110.48073, 31.589691],
//         "鄂州市": [114.759775, 30.32661],
//         "仙桃市": [113.381414, 30.287613],
//         "十堰市": [110.44691, 32.457945],
//         "咸宁市": [114.180704, 29.622306],
//         "潜江市": [112.763375, 30.335618],
//         "黄石市": [115.029859, 29.925149],
//         "荆州市": [112.572796, 29.9962],
//         "随州市": [113.429912, 31.828084],
//         "宜昌市": [111.141013, 30.747692],
//         "武汉市": [114.348033, 30.622929],
//         "荆门市": [112.661117, 31.154455]
//       },
//       "湖南": {
//         "湘潭市": [112.60859, 27.728571],
//         "衡阳市": [112.579693, 26.79241],
//         "张家界市": [110.532571, 29.390019],
//         "益阳市": [111.958112, 28.573863],
//         "岳阳市": [113.259656, 29.064702],
//         "娄底市": [111.618096, 27.736288],
//         "株洲市": [113.522054, 27.11877],
//         "常德市": [111.524901, 29.299821],
//         "湘西土家族苗族自治州": [109.731855, 28.69471],
//         "郴州市": [113.1421, 25.813224],
//         "邵阳市": [110.880736, 26.911944],
//         "长沙市": [113.158738, 28.224198],
//         "永州市": [111.734668, 25.773933],
//         "怀化市": [110.160945, 27.770504]
//       },
//       "澳门特别行政区": {
//         "望德堂区": [113.554548, 22.195888],
//         "嘉模堂区": [113.572997, 22.157651],
//         "大堂区": [113.557101, 22.178067],
//         "圣方济各堂区": [113.577285, 22.123356],
//         "花王堂区": [113.546389, 22.19883],
//         "花地玛堂区": [113.560505, 22.202177],
//         "风顺堂区": [113.538764, 22.185942],
//         "路凼填海区": [113.567509, 22.139885]
//       },
//       "江西": {
//         "上饶市": [117.476736, 28.773168],
//         "九江市": [115.457927, 29.320292],
//         "抚州市": [116.439443, 27.509147],
//         "吉安市": [114.830656, 26.972776],
//         "鹰潭市": [117.113453, 28.22134],
//         "萍乡市": [113.9077, 27.509957],
//         "南昌市": [116.024268, 28.646866],
//         "景德镇市": [117.275331, 29.305345],
//         "赣州市": [115.279176, 25.710114],
//         "宜春市": [114.978044, 28.304516],
//         "新余市": [114.85774, 27.842192]
//       },
//       "海南": {
//         "三沙市": [113.343872, 8.21455],
//         "昌江黎族自治县": [108.993681, 19.226054],
//         "临高县": [109.715481, 19.809704],
//         "琼中黎族苗族自治县": [109.854689, 19.032122],
//         "屯昌县": [110.053403, 19.342415],
//         "琼海市": [110.422047, 19.210395],
//         "陵水黎族自治县": [109.95145, 18.549555],
//         "澄迈县": [109.990271, 19.699908],
//         "海口市": [110.423404, 19.851642],
//         "五指山市": [109.511264, 18.825469],
//         "定安县": [110.31319, 19.483604],
//         "保亭黎族苗族自治县": [109.649561, 18.591338],
//         "儋州市": [109.389824, 19.579287],
//         "文昌市": [110.788477, 19.747316],
//         "东方市": [108.818563, 18.995703],
//         "万宁市": [110.324378, 18.830317],
//         "白沙黎族自治县": [109.351748, 19.209889],
//         "乐东黎族自治县": [109.030187, 18.639716],
//         "三亚市": [109.42166, 18.362267]
//       },
//       "香港特别行政区": {
//         "黄大仙区": [114.20974, 22.341657],
//         "荃湾区": [114.086798, 22.365421],
//         "沙田区": [114.207032, 22.38602],
//         "南区": [114.206983, 22.232931],
//         "九龙城区": [114.197767, 22.314545],
//         "北区": [114.182122, 22.510784],
//         "湾仔区": [114.189434, 22.266406],
//         "屯门区": [113.979955, 22.388596],
//         "西贡区": [114.264813, 22.314203],
//         "离岛区": [113.944813, 22.260175],
//         "油尖旺区": [114.172223, 22.303469],
//         "观塘区": [114.230773, 22.309542],
//         "大埔区": [114.205562, 22.458868],
//         "东区": [114.227107, 22.270314],
//         "元朗区": [114.047174, 22.445964],
//         "深水埗区": [114.156937, 22.328965],
//         "中西区": [114.152342, 22.274164],
//         "葵青区": [114.118691, 22.341751]
//       },
//       "黑龙江": {
//         "黑河市": [126.981318, 49.279492],
//         "七台河市": [130.941727, 45.885305],
//         "齐齐哈尔市": [124.548848, 47.702135],
//         "佳木斯市": [130.511495, 46.668479],
//         "鸡西市": [132.309687, 45.654355],
//         "双鸭山市": [132.612124, 46.744017],
//         "牡丹江市": [129.895544, 44.607509],
//         "大兴安岭地区": [124.201147, 52.341079],
//         "鹤岗市": [130.801988, 47.637961],
//         "伊春市": [129.224749, 47.830729],
//         "哈尔滨市": [127.966769, 45.648634],
//         "绥化市": [126.657769, 46.903804],
//         "大庆市": [124.705463, 46.35769]
//       },
//       "新疆维吾尔自治区": {
//         "阿勒泰地区": [87.046599, 48.014684],
//         "克孜勒苏柯尔克孜自治州": [75.956623, 39.672172],
//         "图木舒克市": [79.163557, 39.87046],
//         "博尔塔拉蒙古自治州": [82.916695, 44.548416],
//         "北屯市": [87.92722, 47.257794],
//         "阿克苏地区": [81.552728, 41.047447],
//         "巴音郭楞蒙古自治州": [87.686419, 39.232711],
//         "哈密市": [93.512843, 43.065502],
//         "铁门关市": [85.973036, 41.790169],
//         "昌吉回族自治州": [89.791271, 44.351191],
//         "阿拉尔市": [81.344017, 40.60247],
//         "昆玉市": [79.593739, 37.372447],
//         "双河市": [82.4685, 44.833543],
//         "乌鲁木齐市": [87.789397, 43.761852],
//         "克拉玛依市": [85.186742, 45.512863],
//         "石河子市": [86.021252, 44.382045],
//         "吐鲁番市": [89.815424, 42.402253],
//         "可克达拉市": [80.622903, 43.930112],
//         "喀什地区": [76.882092, 37.900516],
//         "五家渠市": [87.557659, 44.362107],
//         "伊犁哈萨克自治州": [82.213723, 43.348823],
//         "和田地区": [80.423511, 38.054139],
//         "塔城地区": [83.87146, 45.623175]
//       },
//       "贵州": {
//         "贵阳市": [106.710905, 26.839839],
//         "毕节市": [105.550226, 27.113789],
//         "铜仁市": [108.546342, 27.970081],
//         "六盘水市": [104.896983, 26.127889],
//         "遵义市": [107.089451, 28.168696],
//         "黔西南布依族苗族自治州": [105.467085, 25.263703],
//         "安顺市": [105.952629, 25.993166],
//         "黔东南苗族侗族自治州": [108.561141, 26.504989],
//         "黔南布依族苗族自治州": [107.254315, 26.014417]
//       },
//       "陕西": {
//         "渭南市": [109.858929, 34.952402],
//         "延安市": [109.319415, 36.44212],
//         "商洛市": [109.912939, 33.645583],
//         "宝鸡市": [107.205102, 34.379983],
//         "西安市": [108.797672, 34.106454],
//         "咸阳市": [108.395139, 34.785704],
//         "安康市": [108.929506, 32.75941],
//         "榆林市": [109.576897, 38.048012],
//         "铜川市": [109.037466, 35.195664],
//         "汉中市": [107.106758, 33.090697]
//       },
//       "宁夏回族自治区": {
//         "银川市": [106.344794, 38.297442],
//         "石嘴山市": [106.516998, 39.007379],
//         "中卫市": [105.504084, 37.016995],
//         "固原市": [106.186158, 35.917936],
//         "吴忠市": [106.532101, 37.467651]
//       },
//       "江苏": {
//         "苏州市": [120.659256, 31.380734],
//         "徐州市": [117.516988, 34.358832],
//         "宿迁市": [118.52564, 33.78376],
//         "盐城市": [120.194097, 33.520643],
//         "扬州市": [119.478052, 32.738709],
//         "南京市": [118.847962, 31.927533],
//         "淮安市": [118.96985, 33.355506],
//         "泰州市": [120.06141, 32.573914],
//         "无锡市": [120.301663, 31.574729],
//         "常州市": [119.644598, 31.622426],
//         "南通市": [121.045154, 32.182282],
//         "镇江市": [119.459509, 32.01515],
//         "连云港市": [119.144773, 34.535893]
//       },
//       "安徽": {
//         "马鞍山市": [118.369553, 31.63685],
//         "亳州市": [116.184908, 33.435397],
//         "安庆市": [116.395831, 30.516614],
//         "池州市": [117.373323, 30.280284],
//         "宿州市": [117.213394, 33.86069],
//         "铜陵市": [117.566667, 30.888091],
//         "蚌埠市": [117.330083, 33.10779],
//         "黄山市": [118.07609, 29.904839],
//         "阜阳市": [115.709055, 32.916412],
//         "合肥市": [117.360502, 31.762743],
//         "滁州市": [118.107926, 32.543563],
//         "芜湖市": [118.140239, 31.160317],
//         "宣城市": [118.857711, 30.684909],
//         "六安市": [116.234163, 31.659106],
//         "淮南市": [116.773084, 32.471705],
//         "淮北市": [116.74466, 33.720207]
//       },
//       "广西壮族自治区": {
//         "百色市": [106.289292, 23.985913],
//         "贺州市": [111.366656, 24.357028],
//         "柳州市": [109.375468, 24.948002],
//         "来宾市": [109.417387, 23.852127],
//         "北海市": [109.341064, 21.666854],
//         "玉林市": [110.186377, 22.440029],
//         "崇左市": [107.277482, 22.501959],
//         "河池市": [107.845944, 24.642313],
//         "防城港市": [108.014761, 21.869759],
//         "钦州市": [109.019375, 22.171606],
//         "贵港市": [110.003191, 23.306537],
//         "桂林市": [110.519005, 25.354947],
//         "南宁市": [108.467414, 23.055856],
//         "梧州市": [110.994766, 23.480033]
//       },
//       "吉林": {
//         "长春市": [125.774678, 44.389735],
//         "通化市": [125.955375, 41.964403],
//         "辽源市": [125.311393, 42.81446],
//         "白山市": [127.2908, 42.074973],
//         "白城市": [123.019641, 45.354627],
//         "四平市": [124.471552, 43.574429],
//         "吉林市": [126.850076, 43.588245],
//         "松原市": [124.486002, 44.807343],
//         "延边朝鲜族自治州": [129.130899, 43.150856]
//       },
//       "山西": {
//         "运城市": [111.073741, 35.188166],
//         "太原市": [112.322131, 37.960575],
//         "大同市": [113.724948, 39.904392],
//         "晋城市": [112.713023, 35.610741],
//         "朔州市": [112.648275, 39.619401],
//         "长治市": [112.921335, 36.477773],
//         "晋中市": [112.96937, 37.329079],
//         "忻州市": [112.414812, 38.88511],
//         "临汾市": [111.382177, 36.228827],
//         "阳泉市": [113.505503, 38.06478],
//         "吕梁市": [111.268555, 37.684089]
//       },
//       "甘肃": {
//         "平凉市": [106.650759, 35.305504],
//         "庆阳市": [107.59333, 36.166152],
//         "酒泉市": [96.063053, 40.283203],
//         "白银市": [104.622438, 36.6185],
//         "兰州市": [103.643829, 36.355372],
//         "天水市": [105.740859, 34.647784],
//         "陇南市": [105.225537, 33.599107],
//         "嘉峪关市": [98.211292, 39.829319],
//         "定西市": [104.455849, 35.122861],
//         "临夏回族自治州": [103.28875, 35.622395],
//         "金昌市": [102.048812, 38.434623],
//         "武威市": [103.062057, 38.184598],
//         "张掖市": [99.824306, 38.958959],
//         "甘南藏族自治州": [102.766342, 34.32407]
//       },
//       "重庆市": {
//         "合川区": [106.311534, 30.112594],
//         "江北区": [106.706427, 29.61327],
//         "綦江区": [106.722762, 28.878619],
//         "云阳县": [108.8569, 31.03651],
//         "渝北区": [106.746913, 29.810162],
//         "铜梁区": [106.032957, 29.811623],
//         "南川区": [107.171422, 29.135557],
//         "璧山区": [106.191859, 29.56155],
//         "万州区": [108.406489, 30.70399],
//         "潼南区": [105.814405, 30.143349],
//         "九龙坡区": [106.361237, 29.427956],
//         "永川区": [105.872835, 29.290296],
//         "忠县": [107.938083, 30.339447],
//         "奉节县": [109.349123, 30.952046],
//         "巴南区": [106.75145, 29.371823],
//         "南岸区": [106.661021, 29.535742],
//         "沙坪坝区": [106.367973, 29.624525],
//         "城口县": [108.734887, 31.882085],
//         "彭水苗族土家族自治县": [108.266426, 29.353935],
//         "涪陵区": [107.333876, 29.658731],
//         "丰都县": [107.830882, 29.884475],
//         "长寿区": [107.140036, 29.954748],
//         "荣昌区": [105.506707, 29.464845],
//         "开州区": [108.382773, 31.271098],
//         "渝中区": [106.54094, 29.549561],
//         "大足区": [105.742529, 29.650045],
//         "黔江区": [108.708344, 29.435564],
//         "巫溪县": [109.353155, 31.503437],
//         "酉阳土家族苗族自治县": [108.80039, 28.899994],
//         "江津区": [106.263186, 29.029675],
//         "北碚区": [106.514195, 29.860882],
//         "秀山土家族苗族自治县": [109.018059, 28.491674],
//         "巫山县": [109.900879, 31.115283],
//         "石柱土家族自治县": [108.298354, 30.093678],
//         "梁平区": [107.71882, 30.658197],
//         "垫江县": [107.437591, 30.253329],
//         "大渡口区": [106.458241, 29.417458],
//         "武隆区": [107.709489, 29.373097]
//       },
//       "四川": {
//         "阿坝藏族羌族自治州": [102.612572, 32.409146],
//         "宜宾市": [104.637609, 28.572057],
//         "巴中市": [107.041949, 32.016817],
//         "达州市": [107.651197, 31.368962],
//         "甘孜藏族自治州": [99.987126, 30.97907],
//         "绵阳市": [104.704403, 31.850916],
//         "遂宁市": [105.474967, 30.630339],
//         "攀枝花市": [101.625416, 26.755875],
//         "乐山市": [103.571827, 29.214333],
//         "眉山市": [103.753803, 29.923101],
//         "自贡市": [104.685448, 29.284208],
//         "广元市": [105.78571, 32.261645],
//         "广安市": [106.666503, 30.424447],
//         "凉山彝族自治州": [102.080533, 27.889556],
//         "成都市": [103.932029, 30.652582],
//         "内江市": [104.913936, 29.638263],
//         "南充市": [106.207778, 31.195293],
//         "资阳市": [105.118388, 30.098377],
//         "泸州市": [105.443348, 28.889138],
//         "德阳市": [104.436738, 31.128713],
//         "雅安市": [102.666248, 29.921499]
//       },
//       "浙江": {
//         "台州市": [121.136391, 28.758524],
//         "湖州市": [119.873453, 30.742867],
//         "宁波市": [121.479582, 29.732606],
//         "温州市": [120.463561, 27.895142],
//         "舟山市": [122.146721, 30.056403],
//         "金华市": [119.957138, 29.116409],
//         "丽水市": [119.517057, 28.197991],
//         "嘉兴市": [120.78348, 30.619986],
//         "绍兴市": [120.641057, 29.733651],
//         "衢州市": [118.679596, 28.932606],
//         "杭州市": [119.476145, 29.899331]
//       },
//       "北京市": {
//         "西城区": [116.365725, 39.912046],
//         "平谷区": [117.145426, 40.209012],
//         "门头沟区": [115.791683, 39.994081],
//         "顺义区": [116.72713, 40.152899],
//         "密云区": [116.994847, 40.526838],
//         "朝阳区": [116.513704, 39.951025],
//         "怀柔区": [116.586072, 40.630673],
//         "房山区": [115.853355, 39.719139],
//         "丰台区": [116.250408, 39.835614],
//         "大兴区": [116.420768, 39.649989],
//         "石景山区": [116.176954, 39.932868],
//         "东城区": [116.416792, 39.912964],
//         "海淀区": [116.233229, 40.026927],
//         "昌平区": [116.210566, 40.215442],
//         "延庆区": [116.164006, 40.539995],
//         "通州区": [116.736264, 39.803946]
//       },
//       "云南": {
//         "昭通市": [104.005341, 27.652532],
//         "楚雄彝族自治州": [101.569608, 25.352504],
//         "怒江傈僳族自治州": [98.868912, 26.962472],
//         "迪庆藏族自治州": [99.440037, 27.956938],
//         "德宏傣族景颇族自治州": [98.085183, 24.557458],
//         "曲靖市": [103.939189, 25.705845],
//         "文山壮族苗族自治州": [104.71621, 23.688582],
//         "昆明市": [102.874428, 25.387108],
//         "普洱市": [100.72235, 23.188033],
//         "红河哈尼族彝族自治州": [102.937419, 23.249332],
//         "丽江市": [100.524936, 26.939309],
//         "西双版纳傣族自治州": [100.943913, 21.930145],
//         "保山市": [98.97197, 24.975077],
//         "大理白族自治州": [100.039819, 25.727423],
//         "临沧市": [99.674445, 23.938509],
//         "玉溪市": [102.204177, 24.13847]
//       },
//       "辽宁": {
//         "辽阳市": [123.251535, 41.184839],
//         "盘锦市": [121.999343, 41.068605],
//         "葫芦岛市": [120.2101, 40.62058],
//         "抚顺市": [124.662372, 41.837695],
//         "大连市": [122.192206, 39.594081],
//         "阜新市": [121.961645, 42.282828],
//         "铁岭市": [124.176576, 42.648932],
//         "丹东市": [124.405498, 40.544808],
//         "锦州市": [121.624988, 41.481969],
//         "本溪市": [124.574224, 41.231502],
//         "朝阳市": [120.021815, 41.516544],
//         "鞍山市": [123.016242, 40.718366],
//         "沈阳市": [123.378769, 41.799359],
//         "营口市": [122.456424, 40.391726]
//       },
//       "广东": {
//         "河源市": [114.962736, 24.04354],
//         "韶关市": [113.779322, 24.819411],
//         "茂名市": [110.958878, 22.008947],
//         "汕头市": [116.575074, 23.32209],
//         "清远市": [112.879387, 24.313382],
//         "深圳市": [114.143195, 22.643365],
//         "珠海市": [113.337152, 22.160098],
//         "广州市": [113.544343, 23.329226],
//         "肇庆市": [112.210407, 23.536362],
//         "中山市": [113.398832, 22.517262],
//         "江门市": [112.676458, 22.284359],
//         "云浮市": [111.798782, 22.813673],
//         "惠州市": [114.50704, 23.23448],
//         "湛江市": [110.109819, 21.047884],
//         "东莞市": [113.880001, 22.931856],
//         "揭阳市": [116.124293, 23.334047],
//         "阳江市": [111.779566, 22.026194],
//         "佛山市": [112.949737, 23.004335],
//         "汕尾市": [115.537744, 23.004574],
//         "潮州市": [116.79021, 23.783153],
//         "梅州市": [116.084479, 24.201794],
//         "东沙群岛": [116.887312, 20.617512]
//       },
//       "青海": {
//         "海南藏族自治州": [100.253174, 35.908283],
//         "果洛藏族自治州": [99.415552, 34.124205],
//         "海东市": [102.344734, 36.335114],
//         "黄南藏族自治州": [101.417851, 34.737857],
//         "海西蒙古族藏族自治州": [95.116912, 37.239308],
//         "玉树藏族自治州": [94.30801, 34.231036],
//         "海北藏族自治州": [100.299889, 37.765164],
//         "西宁市": [101.438491, 36.827803]
//       },
//       "内蒙古自治区": {
//         "呼伦贝尔市": [120.886666, 49.619014],
//         "包头市": [110.265618, 41.560878],
//         "通辽市": [121.569877, 43.834478],
//         "呼和浩特市": [111.502117, 40.596287],
//         "乌海市": [106.872209, 39.425058],
//         "锡林郭勒盟": [115.515195, 44.233018],
//         "兴安盟": [121.340147, 46.24332],
//         "赤峰市": [118.878117, 43.240534],
//         "鄂尔多斯市": [108.63473, 39.427784],
//         "乌兰察布市": [112.442779, 41.696758],
//         "阿拉善盟": [102.422231, 40.532548],
//         "巴彦淖尔市": [107.572978, 41.453196]
//       },
//       "天津市": {
//         "蓟州区": [117.434977, 40.003481],
//         "河西区": [117.22915, 39.079207],
//         "北辰区": [117.173323, 39.253276],
//         "滨海新区": [117.593146, 38.913013],
//         "津南区": [117.385935, 38.964437],
//         "宁河区": [117.654975, 39.378198],
//         "河东区": [117.256789, 39.122319],
//         "西青区": [117.119255, 39.028707],
//         "河北区": [117.213793, 39.167184],
//         "南开区": [117.154936, 39.109425],
//         "东丽区": [117.409746, 39.132792],
//         "静海区": [116.960483, 38.856173],
//         "和平区": [117.196211, 39.118984],
//         "武清区": [117.028202, 39.451195],
//         "宝坻区": [117.405524, 39.609498],
//         "红桥区": [117.155649, 39.164727]
//       }
//     };
//   }
// }
